import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;

public class LiczbaTest extends TestCase {
	Liczba lt;

	public LiczbaTest(String testName) {
		super(testName);
	}

	public void setUp() {
		lt = new Liczba();
	}

	public void testI() throws LiczbaException {
		try {
			lt = new Liczba(10);
			lt.zamiana();
			assertNotSame("A", lt.liczby[9]);
		} catch (LiczbaException e) {
		}
		
	}

	public void testII() throws LiczbaException {
		try {
			lt = new Liczba(5);
		} catch (LiczbaException e) {
		}
		lt.zamiana();
		assertNotSame("A", lt.liczby[9]);
	}

	public void testIII() throws LiczbaException {
		try {
			lt = new Liczba(10);
		} catch (LiczbaException e) {
		}
		lt.zamiana();
		assertNotSame("12", lt.liczby[6]);
	}

	public void testIV() throws LiczbaException {
		try {
			lt = new Liczba(10);
		} catch (LiczbaException e) {
		}
		lt.zamiana();
		assertNotSame("1010", lt.liczby[0]);
	}

	public void testV() throws LiczbaException {
		try {
			lt = new Liczba(10);
		} catch (LiczbaException e) {
		}
		lt.zamiana();
		assertNotNull(lt.liczby[9]);
	}

	public void testVI() throws LiczbaException {
		try {
			lt = new Liczba(10);
		} catch (LiczbaException e) {
		}
		lt.zamiana();
		assertTrue(lt.liczby[9].equals("A"));
	}

	public void testVII() throws LiczbaException {
		try {
			lt = new Liczba(10);
		} catch (LiczbaException e) {
		}
		lt.zamiana();
		assertFalse(lt.liczby[9] == "A");
	}

	public static Test suite() {
		TestSuite suite = new TestSuite();
		suite.addTest(new LiczbaTest("testI"));
		suite.addTest(new LiczbaTest("testII"));
		suite.addTest(new LiczbaTest("testIII"));
		suite.addTest(new LiczbaTest("testIV"));
		suite.addTest(new LiczbaTest("testV"));
		suite.addTest(new LiczbaTest("testVI"));
		suite.addTest(new LiczbaTest("testVII"));
		return suite;
	}

	public void tearDown() {
		lt = null;
	}
}
